#pragma once

#include <iostream>
#include <functional>

//1.任务类， 以加法为例
class Task
{
public:
    //构造函数，传入两个数
    Task(int a, int b) : _a(a), _b(b), _result(0) {}

    //任务函数，求和
    void add()
    {
        _result = _a + _b;
    }
 
    //获取_a成员
    int get_a() const
    {
        return _a;
    }

    //获取_b成员
    int get_b() const
    {
        return _b;
    }

    //获取_result成员
    int get_result() const
    {
        return _result;
    }   

private:
    int _a;
    int _b;
    int _result;
};


//2. 函数任务
using task_t = std::function<void()>;

void Download()
{
    //std::cout << "这是一个下载任务" << std::endl;
    std::cout << "Download" << std::endl;
    //sleep(3);
}